body {
  padding: 0;
  margin: 0;
  font-family: 'Roboto', sans-serif;
}

h1 {
  background-color: rgba(2,119,189,1);
  box-shadow: 0 5px 5px -3px rgba(0,0,0,.26);
  font-size: 2em;
  color: white;
  padding: .5em;
  margin: 0 0 1em 0;
}

/* Styles for the user page. */

#badges {
  margin: 1.5em;
}

.badge {
  width: 140px;
  height: 210px;
  float: left;
  margin: .5em .8em;
}

.shield {
  width: 130px;
  height: 150px;
  padding: .5em;
  background: #ddd;
  box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, .2);
  border-radius: 30px 30px 120px 120px;
}

.icon {
  position: relative;
  text-align: center;
  top: 5px;
  left: 5px;
  width: 120px;
  height: 120px;
}


.icon img {
  width: 120px;
  height: 120px;
}

.level {
  position: absolute;
  font-size: 120%;
  bottom: -2px;
  right: -2px;
  background: #4a4;
  color: white;
  border: 1px solid white;
  border-radius: 18px;
  padding: 4px 10px;
}

.caption {
  margin-top: 10px;
  text-align: center;
}


.badge:hover .shield {
  background: #cce;
}

.badge:hover .caption {
  text-decoration: underline;
}

/* Styles for the badge details page. */

#details {
  margin: 1em 0 0 3em;
}

#sidebar {
  vertical-align: top;
  padding-right: 2em;
  width: 140px;
}

#main {
  margin-left: 2em;
  padding-left: 2em;
  border-left: 1px dotted rgba(2,119,189,1);
}

.level_doc th, .level_doc td {
  padding: 4px 8px;
}

.level_doc th {
  background: #eee;
}

.level_doc td {
  text-align: center;
}